home *** CD-ROM | disk | FTP | other *** search
/ Windows Expert / Windows Expert.iso / business / pcprojct.zip / PROJECT.ZOO / pmanual.txt < prev    next >
Text File  |  1990-05-24  |  35KB  |  781 lines

  1.  
  2.  
  3.                                 
  4.  
  5.  
  6.  
  7.                                 
  8.  
  9.  
  10.  
  11.                     P C - P r o j e c t  3.0
  12.                                 
  13.                            User Manual
  14.  
  15.  
  16.  
  17.                             05/24/90
  18.  
  19.  
  20.  
  21.                                by
  22.                           Zack Urlocker
  23.                                 
  24.  
  25.  
  26.  
  27.                                 
  28.  
  29.                                   
  30.                          Copyright 1988-90
  31.                        The Whitewater Group
  32.                           1800 Ridge Ave
  33.                       Evanston, IL 60201 USA
  34.                                   
  35.                            708-328-3800
  36.                                   
  37.                                   
  38.                                   
  39.                         All rights reserved
  40.  
  41.      PC-Project User Manual  2
  42.  
  43.  
  44.                                          
  45.  
  46.                                Table of Contents
  47.  
  48.  
  49.        Chapter 1 - Getting Started...............................2
  50.  
  51.        1.0 How to use this manual................................2
  52.        1.1 Introduction to PC-Project............................2
  53.        1.2 PC-Project features...................................2
  54.        1.3 Files on disk.........................................3
  55.        1.4 PC-Project installation...............................3
  56.        1.5 Installed files.......................................4
  57.        1.6 Windows installation..................................4
  58.        1.7 Starting PC-Project...................................4
  59.        1.8 Suggestions...........................................5
  60.        1.9 About Actor...........................................5
  61.  
  62.        Chapter 2 - Using PC-Project..............................6
  63.  
  64.        2.1 An overview of project management.....................6
  65.        2.2 Creating a project with PC-Project....................7
  66.        2.3 Overriding the calculated early start and late finish.9
  67.        2.4 Saving and loading projects...........................9
  68.        2.5 Other views of the project............................9
  69.        2.6 Assigning costs.......................................10
  70.        2.7 Estimating task time with PERT........................11
  71.        2.8 The Options menu......................................11
  72.        2.9 Tips for managing a project...........................11
  73.        2.10 Command reference....................................12
  74.  
  75.        Chapter 3 - Examining the Source Code.....................13
  76.  
  77.        3.1 Introduction..........................................13
  78.        3.2 If you don't have Actor...............................13
  79.        3.3 If you have Actor.....................................14
  80.        3.4 Learning more.........................................15
  81.  
  82.      PC-Project User Manual  3
  83.  
  84.  
  85.        
  86.  
  87.                           Chapter 1 - Getting Started
  88.  
  89.  
  90.        1.0 How to use this manual
  91.  
  92.        This manual is divided into three chapters: Getting Started,
  93.        Using PC-Project and Exploring the Source Code.  All users should
  94.        read chapter 1 for an overview of PC-Project and installation
  95.        instructions.  For details on managing projects with PC-Project
  96.        read chapter two.  If you are interested in exploring how PC-
  97.        Project works you should read chapter three.
  98.  
  99.        1.1 Introduction to PC-Project
  100.  
  101.        PC-Project is a complete critical path project management
  102.        application that runs under Microsoft Windows.  PC-Project is
  103.        written entirely in Actor, an object-oriented programming
  104.        language for Microsoft Windows.  Complete source code is
  105.        included.   PC-Project is freely distributed for non-commercial
  106.        use as an example Windows program.
  107.        
  108.        If any files are missing from the version you have or if you'd
  109.        like to get the latest version, you can order it directly from me
  110.        at The Whitewater Group at the address given below.  There is a
  111.        nominal charge of $5.00 to the U.S. and $10 elsewhere.
  112.  
  113.        1.2 PC-Project features
  114.  
  115.        PC-Project is a full-featured project management system.  It can
  116.        be used to plan and monitor almost any type of project.  Features
  117.        include the following:
  118.        
  119.          -  Easy to use pulldown menus and graphical user
  120.             interface.
  121.          -  Full mouse and keyboard interface.
  122.          -  Can optionally use Lotus 1-2-3 style commands.
  123.          -  Can view a project as a PERT (network) diagram, a Gantt
  124.             chart, a list of activities or a list of resources.
  125.          -  Full use of color in charts.
  126.          -  Automatically recalculates the critical path of a
  127.             project using CPM or PERT algorithms.
  128.          -  Easy printing of PERT chart, Gantt chart and text
  129.             report.
  130.          -  Can allocate costs to tasks using either fixed costs or
  131.             by assigning resources with a fixed and/or variable
  132.             cost component.
  133.          -  Full source code included.
  134.  
  135.      PC-Project User Manual  4
  136.  
  137.  
  138.        1.3 Files on disk
  139.  
  140.        The files on this disk are:
  141.         READPROJ.TXT   -A "readme" file of quick instructions
  142.         INSTALL.BAT    -Installation program
  143.         ZOO.EXE        -Zoo compression utility program.
  144.         PROJECT.ZOO    -A compressed file that contains PC-Project
  145.        
  146.        (The ZOO file also contains the READPROJ.TXT and INSTALL.BAT file
  147.        for easy electronic distribution.)
  148.  
  149.        1.4 PC-Project installation
  150.  
  151.        If you received this disk directly from the Whitewater Group,
  152.        there is an INSTALL.BAT program on the disk.  To install type:
  153.        
  154.          A: INSTALL A: C: C:\ACTOR
  155.        
  156.        If you downloaded this program from a bulletin board system, then
  157.        follow these instructions.  You will need the ZOO.EXE utility
  158.        which should be available on the BBS also.
  159.        
  160.        If you don't have Actor make 4 subdirectories as shown below:
  161.          MD ACTOR
  162.          CD ACTOR
  163.          MD CLASSES
  164.          MD ACT
  165.          MD RES
  166.        
  167.        Then install the application and the source code by typing
  168.          CD ACTOR
  169.          ZOO x/ PROJECT.ZOO
  170.        
  171.        Zoo works like ARC but is public domain.  Use the command
  172.          ZOO h
  173.        for help.
  174.  
  175.      PC-Project User Manual  5
  176.  
  177.  
  178.        1.5 Installed files
  179.  
  180.        During the installation process the following files will be
  181.        created on your hard disk.
  182.        
  183.        PMANUAL.TXT   -This file
  184.        PROJECT.EXE   -Executable PC-Project program file
  185.        PROJECT.IMA   -Sealed off image file required to run above
  186.        *.PRJ         -Various test files
  187.        
  188.        If you installed the source code, the following files will also
  189.        be found:
  190.        
  191.        PROJ.LOD      -A "load file" used if you have Actor
  192.        PROJSEAL.LOD  -A "load file" to seal off the application
  193.        PROJ.H        -Header file of constant definitions
  194.        CLASSES\*.CLS -Source code to the classes of PC-Project
  195.        ACT\*.ACT     -Miscelaneous Actor source code methods
  196.        RES\*.*       -Resource script files and project icon file
  197.  
  198.        1.6 Windows installation
  199.  
  200.        If you need to create large projects and ever get the error
  201.        message "Out of dynamic memory" or "Not enough memory to run" add
  202.        a new section to the WIN.INI file:
  203.          [PC-Project]
  204.          Dynamic=40
  205.        
  206.        By default, the project manager uses 40K of Dynamic memory; if
  207.        you need more (or less) just set it as shown above.
  208.  
  209.        1.7 Starting PC-Project
  210.  
  211.        PC-Project 3.0 requires Microsoft Windows 3.0.  If you need to
  212.        run PC-Project on Windows 2.x, you will need PC-Project 2.0.  To
  213.        start PC-Project start Windows and then double click on the
  214.        PROJECT.EXE file.  DON'T click on the PROJECT.IMA file since this
  215.        will try to run Actor and you may not have the resources
  216.        installed in your ACTOR.EXE file.  You can run PC-Project
  217.        directly from the DOS C> prompt by typing
  218.        
  219.          WIN PROJECT.EXE
  220.        
  221.  
  222.      PC-Project User Manual  6
  223.  
  224.  
  225.        1.8 Suggestions
  226.  
  227.        Please let me know if there are any bugs or suggestions by
  228.        sending mail to The Whitewater Group at the address below.
  229.        Because PC-Project is distributed free of charge, I cannot
  230.        provide technical support beyond answering questions by mail.
  231.  
  232.        1.9 About Actor
  233.  
  234.        Actor is an object-oriented programming language for Microsoft
  235.        Windows.  Actor is a complete development system capable of
  236.        creating standalone MS-Windows applications.  No licensing fees
  237.        are required to distribute applications written in Actor.
  238.        
  239.        For more information about Actor contact:
  240.        
  241.          The Whitewater Group
  242.          1800 Ridge Avenue
  243.          Evanston, IL
  244.          60201  USA
  245.        
  246.          (708)328-3800
  247.  
  248.      PC-Project User Manual  7
  249.  
  250.  
  251.  
  252.                          Chapter 2 - Using PC-Project
  253.  
  254.  
  255.        2.1 An overview of project management
  256.  
  257.        Project management techniques can be used to plan any "project"
  258.        that has a start, a finish and some known steps or activities in
  259.        between.  Examples of projects include: developing software;
  260.        writing a book; hosting a dinner party and so on.
  261.        
  262.        In order to manage a project you must know all of the activities
  263.        involved in getting from the start to the end.  The objective of
  264.        project management is to create a schedule for the project that
  265.        indicates when each activity needs to start (and finish) in order
  266.        for the project to be completed in the shortest time possible.
  267.        
  268.        The total project time is the total time of all activities on the
  269.        "critical path".  If an activity is on the critical path, it
  270.        means that any delay in its time will cause a delay in the entire
  271.        project.  Thus an important part of project management is to
  272.        determine which activities are critical, and then focus our
  273.        attention on making sure that these activities are completed in
  274.        the allotted time.  Activities which are not critical have
  275.        "slack" time.
  276.        
  277.        An example project might be moving into a house.  We can list
  278.        some of the tasks and the times required.
  279.        
  280.          --Buy the house (7 days)
  281.          --Move in (4 days)
  282.          --Paint it (2 days)
  283.          --Carpet it (5 days)
  284.          --Furnish it (14 days).
  285.        
  286.        Some of these tasks must be done before others.  For example, we
  287.        must buy a house before we can move in.  Also, we should paint
  288.        before we carpet.  Other tasks have no such dependency and can be
  289.        done in parallel.  For example, painting and carpeting are
  290.        independant of furnishing.
  291.        
  292.        Our first step in managing the project would be to create a PERT
  293.        (Project Evaluation and Review Techniques) chart.  A PERT chart
  294.        is a network diagram of the activities in the project and
  295.        indicates the sequence of activities. A PERT chart for moving
  296.        into a house might look like the following.
  297.        
  298.                    7      4                2       5
  299.          Start -> Buy -> Move -> Ready-> Paint-> Carpet-> End
  300.                       |                |
  301.                       |      14        |
  302.                       -----> Furnish  --                 
  303.        
  304.  
  305.      PC-Project User Manual  8
  306.  
  307.  
  308.        Note that an additional activity was included called "Ready".
  309.        The activities "Ready", "Start" and "End" are known as
  310.        milestones.  Milestones are activities that, unlike tasks, take
  311.        no time or resources.  Milestones are used to mark the start or
  312.        end of significant tasks.  We use the "Ready" milestone to
  313.        indicate that we are ready to settle into our house and begin
  314.        painting and furnishing.  Although tasks can have only a single
  315.        input and output, milestones can have several.  Thus, you may
  316.        have to introduce "dummy" milestones in a project to have
  317.        different paths in a project.
  318.        
  319.        Note that "Furnish" is on the critical path since it's length (14
  320.        days) is greater than the total time for "Paint" and "Carpet" (7
  321.        days).  The total time of the project is thus the time of all
  322.        Tasks on the critical path which is 25 days (7+4+14).
  323.        
  324.        The "Paint" and "Carpet" tasks would have slack time of 7 days.
  325.        Thus painting (or carpeting) could fall behind schedule by as
  326.        much as 7 days before it would become critical and impact on the
  327.        total project time.
  328.        
  329.        You can also determine the early start, early finish, late start
  330.        and late finish times of any activity or of the project.
  331.        Normally these are calculated to determine the critical path.
  332.        For activities that are crtical the early times are the same as
  333.        the late times.
  334.        
  335.        Sometimes you may wish to specify an overriding early start or
  336.        late finish time.  For example, you might set the early start day
  337.        for "Start" to be 09/01/88, meaning that the project begins on
  338.        that date.  Conversely, you could set the late finish date for
  339.        "End" to be 10/01/88 and then calculate all other dates based on
  340.        this end date.  You could also override the early start or late
  341.        finish for any activity.  This is useful if you know, for
  342.        example, that painting is scheduled to begin work on a particular
  343.        day.
  344.        
  345.        By using PC-Project the critical path, early start and late
  346.        finish dates are automatically calculated.
  347.  
  348.        2.2 Creating a project with PC-Project
  349.  
  350.        When PC-Project starts you will have an "empty" project with just
  351.        "Start" and "End" milestones.  The initial starting date of the
  352.        project is 1/1/90.  To begin a new project with a different date,
  353.        select the menu item File New.  You can select menu commands by
  354.        clicking the mouse on File then on New, or if you prefer, by
  355.        typing [Alt-F] and then N.  (You can also use Lotus 1-2-3 style
  356.        commands, e.g. / F N.)
  357.        
  358.        A dialog box will come up asking you the name of the project, a
  359.        brief description of the project and the early start (ES) and
  360.        late finish (LF) dates.  Type "House" as the name of the project
  361.        and enter the early start date "04/01/90".  For most projects you
  362.  
  363.      PC-Project User Manual  9
  364.  
  365.  
  366.        will specify only the early start and let PC-Project calculate
  367.        the late finish.  You can move between the fields in the dialog
  368.        box by clicking the mouse or by pressing [Tab] and [Shift-Tab].
  369.        When you are finished, click on the Ok button to accept the dates
  370.        (or press [Enter]) or click on the Cancel button (or press [Esc])
  371.        to cancel.
  372.        
  373.        Next, you need to create and connect the activities of the
  374.        project by using the Edit New Milestone and Edit New Task menu
  375.        choices.  These are hierarchical menus, so you must select Edit,
  376.        then New and then Milestone or Task.  Since the "Start" milestone
  377.        is already created, you can begin by creating the "Buy" task.
  378.        Select Edit New Task from the menu.  A dialog box will come up.
  379.        For now, just type in the name of the task, "Buy", a description,
  380.        the time, "7", and lastly, type in the input "Start".  This means
  381.        that "Buy" is connected to the "Start" activity.  We'll let PC-
  382.        Project calculate the early start and late finish for us and
  383.        ignore costs and resources for now.  So just click on the Ok
  384.        button to accept this activity.  If you followed the instructions
  385.        the PERT diagram will now show the "Buy" task connected to the
  386.        "Start" milestone.
  387.        
  388.        In PC-Project tasks are drawn as rectangles and milestones are
  389.        drawn as rounded rectangles.  By default, the early start date is
  390.        displayed above each activity.
  391.        
  392.        You can then enter and connect the remaining activities.
  393.        
  394.          New     Name    Time   Input   Output
  395.          ---------------------------------------
  396.          Task    Move     4     Buy
  397.          Mstone  Ready          Move
  398.          Task    Paint    2     Ready
  399.          Task    Carpet   5     Paint   End
  400.          Task    Furnish 14     Ready   End
  401.        
  402.        PC-Project is "case sensitive" so that "Buy" is not the same as
  403.        "buy" or "BUY".  Type the names exactly as they appear above.
  404.        
  405.        As a shortcut, you can click the mouse in a task or milestone and
  406.        drag the cursor to a new location to create a task.  This is
  407.        often faster than using menus to create new tasks.
  408.        
  409.        Note that you must type in the Input field in order to connect an
  410.        activity.  If you make a mistake, you can click on the activity
  411.        with the left mouse button or move the cursor and press [F2] or
  412.        [Enter] to edit it.  If you want to delete an activity, select
  413.        the menu item Edit Delete Activity.  PC-Project will warn you if
  414.        the activity is still connected.
  415.        
  416.        For tasks "Carpet" and "Furnish" you should also enter "End" as
  417.        the output to hookup the last milestone.  Whenever you set the
  418.        Input of an activity it also sets the Output of the connected
  419.  
  420.      PC-Project User Manual  10
  421.  
  422.  
  423.        activity.  For example, if you click on the "Start" milestone,
  424.        you will see that it has as Output "Buy".
  425.        
  426.        When you finish connecting the activities the critical path
  427.        should appear in bold.  You can then experiment and try different
  428.        "what if" scenarios.  For example, click on the "Paint" task (or
  429.        move the cursor and press [F2] or [Enter]) and change the time
  430.        from 2 to 12.  Then click on the Ok button.  Notice that the
  431.        critical path has been recalculated and is now different.  Also,
  432.        the early start time for "Carpet" is ten days later.  In fact,
  433.        the whole project has been delayed by a change in the time it
  434.        takes to paint.
  435.        
  436.        Remember that tasks take time and resources but milestones do
  437.        not.  Also, tasks can only have a single input or output.  Use
  438.        milestones when you need to create different paths in the
  439.        project.
  440.  
  441.        2.3 Overriding the calculated early start and late finish
  442.  
  443.        You can specify an early start (ES) or late finish (LF) date for
  444.        any activity.  If you do, this will override what is calculated
  445.        by PC-Project.  For example, if you want the project to begin on
  446.        day 02/03/90, set Start's ES to that date.  If you want to see
  447.        when things need to be done by if the project finishes on day
  448.        06/15/90, set End's LF to that date.
  449.        
  450.        All dates are entered in MM/DD/YY or MM/DD/YYYY format.  Examples
  451.        of valid dates include 09/15/90, 1/1/90, 9/01/1990.  Examples of
  452.        invalid dates are 31/09/88, 01/01, and so on.
  453.        
  454.        Setting early start and late finish is not recommended for
  455.        activities in the of a project since it may introduce excess
  456.        slack time and prevent the critical path from being found.
  457.        
  458.        To cancel an override date, you can delete the date in the ES or
  459.        LF field of the dialog box.
  460.  
  461.        2.4 Saving and loading projects
  462.  
  463.        You can save the current project to disk by using the File Save
  464.        command or by pressing [Ctrl-S].  By default the extension .PRJ
  465.        is used.  PC-Project comes with several sample projects on disk.
  466.        You can load these with the command File Open or by pressing
  467.        [Ctrl-O].  PC-Project will warn you if you try to exit or load a
  468.        new project without saving your old work.
  469.  
  470.        2.5 Other views of the project
  471.  
  472.        The PERT diagram is useful for creating a project and seeing the
  473.        relationships between activities.  The View menu has choices that
  474.        convey other information.  Select the View Gantt menu item or
  475.        press [F6] to see a Gantt chart.  A new window will appear
  476.        showing a timeline of the project.  Tasks are drawn as bars with
  477.   
  478.      PC-Project User Manual  11
  479.  
  480.  
  481.        the critical time in red and slack time in gray.  Milestones are
  482.        drawn as diamonds since they don't take any time.  The critical
  483.        activities also have a "*" next to their names.  You can edit
  484.        activities from within the Gantt chart by clicking on them also.
  485.        You can also press [F1] for a help screen.
  486.        
  487.        To close the Gantt chart double click on the "system box" in the
  488.        upper left corner or press [F6] again.
  489.        
  490.        The View Activities command (or press [F4]) will give a list of
  491.        all activities in the project with their name, time, slack, early
  492.        start and late finish times.
  493.        
  494.        The View Project summary command (or press [F5]) will give a
  495.        summary of the project showing the name, early and late start and
  496.        finish dates, the total time, slack and costs.  This command uses
  497.        the same dialog box as the New File command and can be used to
  498.        change the early start or late finish dates of the project.
  499.  
  500.        2.6 Assigning costs
  501.  
  502.        You can assign costs to a project in two ways.  The easiest way
  503.        is to assign a fixed cost (in dollars) to each task.  You can do
  504.        this by filling in the Fixed Cost field when editing a task.  The
  505.        View Project summary command always shows the total cost of the
  506.        project.
  507.        
  508.        A more sophisticated way of assigning costs is to use resources.
  509.        Resources are people or objects that can have a fixed and/or
  510.        variable cost associated with their use.  Most resources have a
  511.        variable cost.  You can assign resources to a task by filling in
  512.        the Resources field when editing a task.  You don't need to
  513.        create resources before using them.  PC-Project will display a
  514.        dialog box the first time a resource is used to allow you to set
  515.        the costs.
  516.        
  517.        For example, click on the "Paint" activity.  In the Resources
  518.        field type "Fred Bob Paint".  The resources should be separated
  519.        by one or more spaces.  When you click on the Ok button, a dialog
  520.        box will come up for each of the new resources "Fred", "Bob" and
  521.        "Paint".  You can enter a fixed cost (FC), variable cost (VC),
  522.        and maximum for each.  For example, we would assign a variable
  523.        cost for Fred of 50, meaning we pay him $50 per day.  Since Bob
  524.        is a friend of ours, we don't have to pay him anything, so just
  525.        press [Enter] leaving the fields blank.  Paint will cost us, say
  526.        $500, regardless of how many days it takes to paint, so we would
  527.        have a fixed cost and no variable cost.
  528.        
  529.        The maximum field can be used to indicate that a particular
  530.        resource is only available for so many days.  If the resource is
  531.        overallocated, a "*" will appear next to it's name when you View
  532.        All Resources (or press [F3]).  The View All Resources command
  533.        also shows where resources are used and how many days they are
  534.        used for.
  535.  
  536.      PC-Project User Manual  12
  537.  
  538.  
  539.        
  540.        If we assign Bob and Fred to another task, such as "Move", their
  541.        fixed and variable costs will automatically be used to calculate
  542.        the cost of the task and the total project cost.
  543.        
  544.        You can change the fixed or variable cost of a resource by using
  545.        the View Resource command.  This will change the rates and update
  546.        all tasks that use the resource as well as the total project
  547.        cost.  You can also delete a resource with the Edit Delete
  548.        Resource command.  PC-Project will warn you if the resource is
  549.        still in use.
  550.  
  551.        2.7 Estimating task time with PERT
  552.  
  553.        Sometimes you may not know the exact time required to complete a
  554.        task.  You can create a PERTTask which estimates time based on
  555.        the likely, best and worst case scenarios.  When you need to
  556.        create a task with an estimated time, select New PERTTask rather
  557.        than New Task.  Once you fill in the fields for likely, best and
  558.        worst times, you can use a PERTTask just like a regular task.
  559.        You can also freely mix PERTTasks with regular Tasks with known
  560.        times.  The file PERT.PRJ shows an example of a project with
  561.        estimated times.
  562.  
  563.        2.8 The Options menu
  564.  
  565.        The Options menu has several miscelaneous choices.  For example,
  566.        you can turn off automatic recalculation of the critical path.
  567.        For large projects, this can speed up data entry so that you can
  568.        make several changes and then recalculate the critical path by
  569.        selecting Options Recalc or by pressing [F9].
  570.        
  571.        You can also choose Options Display settings to view the late
  572.        finish, slack, time, or cost for each activity.  You can select
  573.        to view something above and/or below each activity in the PERT
  574.        diagram.  By default the early start time is shown above each
  575.        activity.  However, you could change this to suit your own
  576.        tastes, displaying perhaps the time on top and the cost below.
  577.        
  578.        The Options menu also allows you to select a "Zoom view" of the
  579.        chart.  Using this choice (or pressing Ctrl-Z) will show the
  580.        chart in a compressed format.  This is useful when working in CGA
  581.        resolution or when viewing a large project.  The Zoom view choice
  582.        acts as a toggle.  Selecting it again will return the project to
  583.        the normal size.
  584.        
  585.        The Color menu choice is also a toggle that allows you to switch
  586.        from the default use of color (red for critical tasks, blue for
  587.        non-critical) to black and white only.  This is useful when you
  588.        are working on a monochrome screen on which both red and blue
  589.        look the same.  If you use PC-Project on an LCD projector, this
  590.        is very handy.
  591.        
  592.  
  593.      PC-Project User Manual  13
  594.  
  595.  
  596.        The last choice, ShowRoom, displays the amount of Windows memory
  597.        available.  If this number is less than about 10K, Windows will
  598.        run very slowly.
  599.  
  600.        2.9 Tips for managing a project
  601.  
  602.          -  List all of the tasks and milestones on paper first.
  603.          -  Remember, tasks can only have a single input and
  604.             output.
  605.          -  Use milestones whenever splitting or joining is
  606.             required.
  607.          -  Split lengthy tasks into smaller ones for flexibility.
  608.          -  If costing will be done, identify all resources.
  609.          -  Create a PERT diagram of the project from left to
  610.             right.
  611.          -  Use a Gantt chart to see slack times.
  612.          -  Focus attention on tasks on the critical path.
  613.  
  614.      PC-Project User Manual  14
  615.  
  616.  
  617.        2.10 Command reference
  618.  
  619.        All menu commands can be executed with the mouse. Alternatively
  620.        you can use the Alt key and the underlined letters to execute a
  621.        command.  For example, [Alt-F] selects the File menu.  You can
  622.        also use Lotus 1-2-3 style commands, e.g. / F S for File Save.
  623.        Press [Esc] to cancel a command.  Some menu items also have
  624.        accelerator keys.  For example, [Ctrl-N] (shown as ^N) executes
  625.        the File New command.  When a menu is not selected, the cursor
  626.        keys will move the arrow cursor in the project window.  This is
  627.        handy if you don't have a mouse.  Clicking the left mouse button
  628.        on an activity or pressing [F2] or [Return] will edit the
  629.        activity.
  630.        
  631.        Menu choice      Key     Description
  632.        ----------------------------------------------------------
  633.        Help!            F1      --Display help screen
  634.        File
  635.          New...         ^N      --Create a new project
  636.          Open...        ^O      --Open an existing project
  637.          Save           ^S      --Save the current project
  638.          Save As...             --Save with a new name
  639.          Print Chart    ^P      --Print the project chart
  640.          Print Report           --Print project summary report
  641.          Run                    --Run another Windows program
  642.          Quit           ^X      --Exit PC-Project
  643.          About Actor            --Information about Actor
  644.        Edit
  645.         New
  646.           Milestone             --Create and connect a new Milestone
  647.           Task                  --Create and connect a new Task
  648.           PERTTask              --Create a new Task with estimated time
  649.         Delete
  650.           Activity              --Delete an existing Milestone or Task
  651.           Resource              --Delete an existing resource
  652.         Clip Chart     ^Ins     --Copy project chart to clipboard
  653.        View
  654.          A Resource             --Edit a resources costs
  655.          All Resources    F3    --See where all resources are used
  656.          Activities       F4    --See all activities, costs, dates
  657.          Project summary  F5    --See project start, finish, cost
  658.          Gantt chart      F6    --See a Gantt timeline chart
  659.        Options
  660.          Zoom view        ^Z    --Toggle the zoomed view
  661.          Display settings F7    --Select start, finish, cost, etc
  662.          Color                  --Toggle the use of color
  663.          Auto recalc      F8    --Automatically recalculate the project
  664.          Recalc!          F9    --Recalculate the critical path
  665.          ShowRoom!        F10   --Show how much memory Windows has
  666.  
  667.      PC-Project User Manual  15
  668.  
  669.  
  670.        
  671.  
  672.                      Chapter 3 - Exploring the Source Code
  673.  
  674.  
  675.        3.1 Introduction
  676.  
  677.        This section gives a brief introduction to exploring the source
  678.        code of PC-Project.  This is not necessary in order to use PC-
  679.        Project, but it can give you some insight into how programs are
  680.        written in Actor.  For more information about PC-Project's design
  681.        refer to the articles at the end of this file.
  682.  
  683.        3.2 If you don't have Actor
  684.  
  685.        Actor source code is stored in plain ASCII text files and can be
  686.        viewed in any text editor.  Source code is stored in class files
  687.        (*.CLS) in the CLASS directory and as Actor code files (*.ACT) in
  688.        the ACT directory.   There is also a header file (*.H) used for
  689.        constant definitions.
  690.        
  691.        Class files contain all of the code for a particular class.  For
  692.        example, the file CLASSES\NETWORK.CLS defines all of the methods
  693.        that objects of class Network understand.  Each method definition
  694.        is separated by two exclamation marks (!!) known as a "chunk
  695.        mark".  These are placed automatically in your code when you use
  696.        the Actor development environment.  Each class file also begins
  697.        with an "inherit" message.  An inherit statement such as
  698.        
  699.          inherit(Network, #Project,
  700.                 #(cost                  /* sum of all costs */
  701.                   resources             /* used by tasks */
  702.                   autoCalc              /* boolean is recalc on? */
  703.                  ), 2, nil)!!
  704.        
  705.        means that a new ancestor of the existing class Network, called
  706.        Project, is being created.  Project includes three new instance
  707.        variables: cost, resources and autoCalc.  All of the methods
  708.        defined for class Network as well as the instance variables, are
  709.        then inherited by class Project.  You will also see "now"
  710.        messages in the .CLS and .ACT files.   These are also
  711.        automatically generated by the Actor environment and indicate the
  712.        class for which methods are being defined.
  713.        
  714.        Actor code files (*.ACT) are used to hold miscelaneous methods.
  715.        For example, PROJ.ACT contains method definitions added to system
  716.        classes.  The header file PROJ.H contains "#define" statements
  717.        similar to what is used in C.  The header file is used both by
  718.        Actor and by the resource compiler.
  719.        
  720.        Actor source code should be quite understandable to anyone
  721.        experienced with C or Pascal.  Comments are within /* and */.
  722.        Actor has if/else statements, loop/endLoop, select/case etc.
  723.  
  724.      PC-Project User Manual  16
  725.  
  726.  
  727.        3.3 If you have Actor
  728.  
  729.        PC-Project 3.0 has been tested with Actor 3.0 under Windows 3.0.
  730.        To run the application from Actor, you will need to copy the
  731.        resources into ACTOR.EXE.  To do so cut and paste the resources
  732.        from PROJECT.RC into a copy of ACTOR.RC.  Then run the resource
  733.        compiler on ACTOR.
  734.        
  735.        The source code uses the Language Extensions I object storage
  736.        facility.  If you don't have Language Extensions I you will have
  737.        to comment out the file names in the LOD files and you will not
  738.        be able to load & save projects.
  739.        
  740.        If you want to examine the code from within Actor, load a "clean"
  741.        copy of Actor, then type
  742.          
  743.          load("proj.lod");
  744.          load();
  745.        
  746.        This takes a while, but will load all of the classes.  You can
  747.        then view all of the source code in the Browser.  You can create
  748.        a new project window by typing
  749.        
  750.          register(ProjWindow);register(GanttWindow);
  751.          PW := defaultNew(ProjWindow, "PC-Project");
  752.          show(PW,1);
  753.        
  754.        To "seal off" the application select the Seal-Off menu choice and
  755.        enter "ProjApp" as the application class and "project.ima" as the
  756.        image file name.
  757.  
  758.        3.4 Learning more
  759.  
  760.        If you're interested in the design of PC-Project, please refer to
  761.        the articles listed below.  Each article covers a different
  762.        aspect of PC-Project.  I encourage you to explore the source code
  763.        and learn more about object-oriented programming and Windows.
  764.        It's safe to say that if PC-Project had been developed in C
  765.        instead of Actor it probably would have taken about twice as long
  766.        to complete and the end result would not have been as good.
  767.        
  768.        Zack Urlocker, "Actor, an Object-Oriented Language",
  769.        Micorcornucopia, Nov./Dec. 1988.  This article contains the most
  770.        complete description of the classes and objects in PC-Project.
  771.        
  772.        Zack Urlocker, "A Methodology for the Real World", Computer
  773.        Language, January 1989.  This article describes some of the
  774.        benefits of an evolutionary programming style.
  775.        
  776.        Zack Urlocker, "Whitewater's Actor: An Introduction to Object-
  777.        Oriented Programming Concepts", Microsoft Systems Journal, March
  778.        1989.  This article is mostly about Windows programming.
  779.  
  780.                                   *   *   *
  781.